home *** CD-ROM | disk | FTP | other *** search
/ CU Amiga Super CD-ROM 22 / CU Amiga Magazine's Super CD-ROM 22 (1998)(EMAP Images)(GB)[!][issue 1998-05].iso / PowerPC / Programming / PPCSmallEiffel / bin_c / pretty16.c < prev    next >
C/C++ Source or Header  |  1998-01-16  |  5KB  |  193 lines

  1. /*
  2. -- ANSI C code generated by :
  3. -- SmallEiffel The GNU Eiffel Compiler -- Release (- 0.82)      --
  4. -- Copyright (C), 1994-98 - LORIA - UHP - CRIN - INRIA - FRANCE --
  5. -- Dominique COLNET and Suzanne COLLIN -    colnet@loria.fr     --
  6. --                 http://www.loria.fr/SmallEiffel              --
  7. */
  8. #include "pretty.h"
  9. T0* r636append(T636* C,T0* a1){
  10. T0* R=NULL;
  11. /*IF*/if ((((C)==((void*)(a1)))||(/*(IRF4.7is_omitted*/((((T636*)C))->_start_position/*0*/)==(NULL)/*)*/))||(r636gives_permission_to_any(C))) {
  12. R=(T0*)C;
  13. }
  14.  else if ((/*(IRF4.7is_omitted*/((((T636*)((T636*)a1)))->_start_position/*0*/)==(NULL)/*)*/)||(r636gives_permission_to_any(((T636*)a1)))) {
  15. R=a1;
  16. }
  17. else {
  18. {T636*n=malloc(sizeof(*n));
  19. *n=M636;
  20. r636merge(n,(((T636*)C))->_start_position/*0*/,(((T636*)C))->_list/*4*/,(((T636*)((T636*)a1)))->_list/*4*/);
  21. R=(T0*)n;
  22. }
  23. }
  24. /*FI*/return R;
  25. }
  26. T0* r358add_comment(T358* C,T0* a1){
  27. T0* R=NULL;
  28. /*IF*/if (((a1)==((void*)(NULL)))||((/*(IRF4.6count*/r52count(((T52*)((((T393*)((T393*)a1)))->_list/*4*/)))/*)*/)==(0))) {
  29. R=(T0*)C;
  30. }
  31. else {
  32. {T529*n=malloc(sizeof(*n));
  33. *n=M529;
  34. r529make(n,(T0*)C,a1);
  35. R=(T0*)n;
  36. }
  37. }
  38. /*FI*/return R;
  39. }
  40. int r358to_integer(T358* C){
  41. int R=0;
  42. r358error((((T358*)C))->_start_position/*16*/,((T0*)ms69_470));
  43. return R;
  44. }
  45. int r358is_a(T358* C,T0* a1){
  46. int R=0;
  47. R=X291is_a(X291run_type(/*(IRF4.3result_type*/(((T358*)C))->_current_type/*4*//*)*/),X291run_type(X662result_type(a1)));
  48. /*IF*/if (!(R)) {
  49. r683add_position((((T358*)C))->_start_position/*16*/);
  50. r358error(X662start_position(a1),((T0*)ms4_662));
  51. }
  52. /*FI*/return R;
  53. }
  54. /*No:E_CURRENT.is_current*/
  55. /*No:E_CURRENT.is_written*/
  56. void r358make(T358* C,T0* a1,int a2){
  57. C->_start_position=a1;
  58. C->_is_written=a2;
  59. C->_to_string=((T0*)ms143_473);
  60. }
  61. void r358print_as_target(T358* C){
  62. /*IF*/if (((((T358*)C))->_is_written/*12*/)||(r238print_current(((T238*)(oBC364fmt))))) {
  63. r238put_string(((T238*)(oBC364fmt)),((T0*)ms143_473));
  64. r238put_character(((T238*)(oBC364fmt)),'\56');
  65. }
  66. /*FI*/}
  67. /*No:E_CURRENT.us_current*/
  68. /*No:E_CURRENT.to_string*/
  69. /*No:E_CURRENT.fz_iinaiv*/
  70. /*No:E_CURRENT.start_position*/
  71. /*No:E_CURRENT.precedence*/
  72. T0* r358to_runnable(T358* C,T0* a1){
  73. T0* R=NULL;
  74. /*IF*/if (((((T358*)C))->_current_type/*4*/)==((void*)(NULL))) {
  75. C->_current_type=a1;
  76. R=(T0*)C;
  77. }
  78.  else if (((((T358*)C))->_current_type/*4*/)==((void*)(a1))) {
  79. R=(T0*)C;
  80. }
  81. else {
  82. {T358*n=malloc(sizeof(*n));
  83. *n=M358;
  84. r358make(n,(((T358*)C))->_start_position/*16*/,(((T358*)C))->_is_written/*12*/);
  85. R=(T0*)n;
  86. }
  87. /*[IRF3.3set_current_type*/((((T358*)(((T358*)R))))->_current_type)=(a1);
  88. /*]*/
  89. }
  90. /*FI*/return R;
  91. }
  92. /*No:E_CURRENT.bracketed_pretty_print*/
  93. /*No:E_CURRENT.result_type*/
  94. /*No:E_CURRENT.set_current_type*/
  95. /*No:E_CURRENT.atomic_precedence*/
  96. /*No:E_CURRENT.pretty_print*/
  97. /*No:E_CURRENT.current_type*/
  98. /*No:E_CURRENT.is_manifest_string*/
  99. /*No:E_CURRENT.is_void*/
  100. void r358error(T0* a1,T0* a2){
  101. r683add_position(a1);
  102. r683error(((T683*)(oBC364eh)),a2);
  103. }
  104. void r592make(T592* C,T0* a1,T0* a2){
  105. C->_header_comment=a1;
  106. C->_list=a2;
  107. }
  108. /*No:COMPOUND.nb_errors*/
  109. T0* r592to_runnable(T592* C,T0* a1){
  110. T0* R=NULL;
  111. T0* _i2=NULL;
  112. T0* _i1=NULL;
  113. int _i=0;
  114. /*IF*/if (((((T592*)C))->_current_type/*4*/)==((void*)(NULL))) {
  115. C->_current_type=a1;
  116. /*IF*/if (((((T592*)C))->_list/*8*/)!=((void*)(NULL))) {
  117. _i=(((T419*)((T419*)((((T592*)C))->_list/*8*/))))->_upper/*8*/;
  118. while (!((_i)==(0))) {
  119. _i1=r419item(((T419*)((((T592*)C))->_list/*8*/)),_i);
  120. _i2=X465to_runnable(_i1,(T0*)C);
  121. /*IF*/if ((/*(IRF4.9nb_errors*/(((T683*)((T683*)(oBC364eh))))->_nb_errors/*0*//*)*/)>(0)) {
  122. /*[IRF3.6append*/{T0* b1=((T0*)ms1_592);
  123. r7append(((T7*)(oBC683explanation)),b1);
  124. }/*]*/
  125. /*[IRF3.6append*/{T0* b1=X291written_mark((((T592*)C))->_current_type/*4*/);
  126. r7append(((T7*)(oBC683explanation)),b1);
  127. }/*]*/
  128. r683add_position(X465start_position(_i1));
  129. /*[IRF3.6fatal_error*/{T0* b1=((T0*)ms2_592);
  130. r683fatal_error(((T683*)(oBC364eh)),b1);
  131. }/*]*/
  132. }
  133. else {
  134. /*[IRF3.6put*/{T419* C1=((T419*)((((T592*)C))->_list/*8*/));
  135. T0* b1=_i2;
  136. int b2=_i;
  137. ((((T419*)C1))->_storage/*0*/)[(b2)-((((T419*)C1))->_lower/*12*/)]=(b1);
  138. }/*]*/
  139. }
  140. /*FI*/_i=(_i)-(1);
  141. }
  142. }
  143. /*FI*/R=(T0*)C;
  144. }
  145. else {
  146. /*IF*/if (((((T592*)C))->_list/*8*/)==((void*)(NULL))) {
  147. {T592*n=malloc(sizeof(*n));
  148. *n=M592;
  149. r592make(n,(((T592*)C))->_header_comment/*0*/,NULL);
  150. R=(T0*)n;
  151. }
  152. }
  153. else {
  154. {T592*n=malloc(sizeof(*n));
  155. *n=M592;
  156. r592make(n,(((T592*)C))->_header_comment/*0*/,r419twin(((T419*)((((T592*)C))->_list/*8*/))));
  157. R=(T0*)n;
  158. }
  159. }
  160. /*FI*/R=r592to_runnable(((T592*)R),a1);
  161. }
  162. /*FI*/return R;
  163. }
  164. void r592pretty_print(T592* C){
  165. int _i=0;
  166. r238level_incr(((T238*)(oBC364fmt)));
  167. r238indent(((T238*)(oBC364fmt)));
  168. /*IF*/if (((((T592*)C))->_header_comment/*0*/)!=((void*)(NULL))) {
  169. r393pretty_print(((T393*)((((T592*)C))->_header_comment/*0*/)));
  170. }
  171. /*FI*//*IF*/if (((((T592*)C))->_list/*8*/)!=((void*)(NULL))) {
  172. _i=1;
  173. while (!((_i)>((((T419*)((T419*)((((T592*)C))->_list/*8*/))))->_upper/*8*/))) {
  174. /*[IRF3.3set_semi_colon_flag*/((((T238*)(((T238*)(oBC364fmt)))))->_semi_colon_flag)=(1);
  175. /*]*/
  176. r238indent(((T238*)(oBC364fmt)));
  177. X465pretty_print(r419item(((T419*)((((T592*)C))->_list/*8*/)),_i));
  178. _i=(_i)+(1);
  179. }
  180. }
  181. /*FI*/r238level_decr(((T238*)(oBC364fmt)));
  182. }
  183. /*No:COMPOUND.list*/
  184. /*No:COMPOUND.current_type*/
  185. T0* r592run_class(T592* C){
  186. T0* R=NULL;
  187. R=X291run_class((((T592*)C))->_current_type/*4*/);
  188. return R;
  189. }
  190. /*No:COMPOUND.header_comment*/
  191. /*No:COMPOUND.fatal_error*/
  192.  
  193.